using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using yq.IBase;
using yq.Model.Base;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;
using cn.Util;

namespace yq.Model.Logic
{
    /// <summary>
    /// Calendar_List - 日程安排 - 对象继承类
    /// </summary>
    [MetadataType(typeof(CalendarListValidaTion))]
    public class CalendarList : ICalendarList<CalendarList>
    {


       #region 生成实体类验证属性
       /// <summary>
       /// 辅助验证类
       /// </summary>
       [Bind]
       public class CalendarListValidaTion
       {

     

        /// <summary>
        /// 日程ID
        /// </summary>
        [Display(Name ="日程ID")]
        [Required]
        [StringLength(36)]
        public String DayId
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 用户ID
        /// </summary>
        [Display(Name ="用户ID")]
        [Required]
        [StringLength(36)]
        public String UserId
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 标题
        /// </summary>
        [Display(Name ="标题")]
        [Required]
        [StringLength(100)]
        public String Title
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 说明
        /// </summary>
        [Display(Name ="说明")]
        [StringLength(500)]
        public String Detailed
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 提示颜色
        /// </summary>
        [Display(Name ="提示颜色")]
        [StringLength(8)]
        public String TipsColor
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 创建时间
        /// </summary>
        [Display(Name ="创建时间")]
        [Required]

        public DateTime SubmitTime
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 日程时间开始
        /// </summary>
        [Display(Name ="日程时间开始")]
        [Required]

        public DateTime OpenTime
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 日程结束时间
        /// </summary>
        [Display(Name ="日程结束时间")]
        [Required]

        public DateTime OverTime
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 下一次通知时间
        /// </summary>
        [Display(Name ="下一次通知时间")]

        public DateTime NextTime
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 是否不公开
        /// </summary>
        [Display(Name ="是否不公开")]
        [RegularExpression(RegularExpressionString.Int, ErrorMessage="必须输入数字")]

        public yq.Enums.BooleanType IsClose
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 是否全天
        /// </summary>
        [Display(Name ="是否全天")]
        [RegularExpression(RegularExpressionString.Int, ErrorMessage="必须输入数字")]

        public yq.Enums.BooleanType IsAllDay
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 重复类型
        /// </summary>
        [Display(Name ="重复类型")]
       [RegularExpression(RegularExpressionString.Int, ErrorMessage="必须输入数字")]

        public yq.Enums.CalendarList.RepeatType RepeatType
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 重复间隔
        /// </summary>
        [Display(Name ="重复间隔")]
        [StringLength(20)]
        public String RepeatInterval
        {
         get; set; 
        }


       
     

        /// <summary>
        /// 重复结束日期
        /// </summary>
        [Display(Name ="重复结束日期")]

        public DateTime RepeatTime
        {
         get; set; 
        }


       

       
       }
       #endregion 生成实体类验证属性
    }
}
